package com.crm.business.crm.service;

import com.alibaba.fastjson.JSONObject;
import com.crm.common.crm.entity.BO.CrmExamineData;
import com.crm.common.ka.core.feign.crm.entity.CrmSaveExamineRecordBO;
import com.crm.common.ka.core.feign.crm.entity.SimpleCrmInfo;
import com.crm.common.ka.core.feign.examine.entity.ExamineConditionDataBO;
import com.crm.common.ka.core.feign.examine.entity.ExamineMessageBO;

import java.util.List;
import java.util.Map;

public interface CrmExamineService {

    public CrmExamineData saveExamineRecord(CrmSaveExamineRecordBO examineRecordBO);

    public List<JSONObject> queryByRecordId(Integer recordId);

    public Boolean queryExamineStepIsExist(Integer categoryType);

    public JSONObject queryExamineRecordList(Integer recordId, Long ownerUserId);


    public Map<String, Object> getDataMapForNewExamine(ExamineConditionDataBO examineConditionDataBO);


    public Boolean updateCheckStatusByNewExamine(ExamineConditionDataBO examineConditionDataBO);

    public void addMessageForNewExamine(ExamineMessageBO examineMessageBO);


    public SimpleCrmInfo getCrmSimpleInfo(ExamineConditionDataBO examineConditionDataBO);

    public String queryMessageTitleForSend(Integer categoryType, Integer recordId);

    public Long queryMessageSubmitUserForSend( Integer categoryType,Integer recordId);
}
